﻿using System;

namespace HCMUS_SearchService_Group2
{
    /////////////////////////////////////////////////
    /// \brief Lớp chứa các mã để truy xuất dữ liệu.
    /// \author Trần Minh Nhật -   0912322.
    /// \details <h3>Chứa các thuộc tính về dịch vụ mà có thể người dùng muốn tra cứu</h3>
    ////////////////////////////////////////////////
    public class SearchResultObject
    {
        public const int SEARCHALL = 0;

        private string location = string.Empty;

        public string Location
        {
            get 
            { 
                return this.location; 
            }

            set 
            {
                this.location = value; 
            }
        }

        private int serviceID = DataConnectionHelper._defaultNumber;

        public int ServiceID
        {
            get 
            {
                return this.serviceID; 
            }

            set 
            {
                this.serviceID = value; 
            }
        }

        private int locationID = DataConnectionHelper._defaultNumber;

        public int LocationID
        {
            get 
            { 
                return this.locationID; 
            }

            set 
            { 
                this.locationID = value; 
            }
        }

        private int streetID = DataConnectionHelper._defaultNumber;

        public int StreetID
        {
            get 
            {
                return this.streetID; 
            }

            set 
            {
                this.streetID = value; 
            }
        }

        private int wardID = DataConnectionHelper._defaultNumber;

        public int WardID
        {
            get 
            {
                return this.wardID; 
            }

            set 
            {
                this.wardID = value; 
            }
        }

        private int districtID = DataConnectionHelper._defaultNumber;

        public int DistrictID
        {
            get 
            {
                return this.districtID; 
            }

            set 
            {
                this.districtID = value;
            }
        }

        private int cityID = DataConnectionHelper._defaultNumber;

        public int CityID
        {
            get 
            {
                return this.cityID; 
            }

            set 
            {
                this.cityID = value; 
            }
        }

        /////////////////////////////////////////////////
        /// \brief Kiểm tra đối tượng có phải là mặc định.
        /// \param[in] Không.
        /// \returns Boolean .
        /// \details <h3>Kiểm tra đối tượng đã được gán giá trị để tìm kiếm hay chưa</h3>
        /////////////////////////////////////////////////
        public Boolean isNullObject()
        {
            int notSearchNumber = DataConnectionHelper._defaultNumber;
            if (this.serviceID != notSearchNumber)
            {
                return false;
            }

            if(this.CityID != notSearchNumber)
            {
                return false;
            }

            if(this.DistrictID != notSearchNumber)
            {
                return false;
            }

            if(this.WardID != notSearchNumber)
            {
                return false;
            }
               
            if(this.StreetID != notSearchNumber)
            {
                return false;
            }
            
            if(this.LocationID != notSearchNumber)
            {
                return false;
            }

            return true;
        }
    }
}
